home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 1 / Cream of the Crop 1.iso / PROGRAM / ZIP19.ARJ / VMSMUNCH.H < prev    next >
C/C++ Source or Header  |  1992-04-28  |  6KB  |  181 lines

  1. /*---------------------------------------------------------------------------
  2.  
  3.   VMSmunch.h
  4.  
  5.   A few handy #defines, plus the contents of three header files from Joe
  6.   Meadows' FILE program.  Used by VMSmunch and by various routines which
  7.   call VMSmunch (e.g., in Zip and UnZip).
  8.  
  9.   ---------------------------------------------------------------------------*/
  10.  
  11. #define GET_TIMES       4
  12. #define SET_TIMES       0
  13. #define GET_RTYPE       1
  14. #define CHANGE_RTYPE    2
  15. #define RESTORE_RTYPE   3
  16.  
  17. /*---------------------------------------------------------------------------
  18.     fatdef.h
  19.   ---------------------------------------------------------------------------*/
  20.  
  21. /* This header file was created by Joe Meadows, and is not copyrighted
  22.    in any way. No guarantee is made as to the accuracy of the contents
  23.    of this header file. This header file was last modified on Sep. 22th,
  24.    1987. (Modified to include this statement) */
  25. #define FAT$K_LENGTH 32
  26. #define FAT$C_LENGTH 32
  27. #define FAT$S_FATDEF 32
  28.  
  29. struct fatdef {
  30.   union  {
  31.     unsigned char fat$b_rtype;
  32.     struct  {
  33.       unsigned fat$v_rtype : 4;
  34.       unsigned fat$v_fileorg : 4;
  35.     } fat$r_rtype_bits;
  36.   } fat$r_rtype_overlay;
  37. # define FAT$S_RTYPE 4
  38. # define FAT$V_RTYPE 0
  39. #   define FAT$C_UNDEFINED 0
  40. #   define FAT$C_FIXED 1
  41. #   define FAT$C_VARIABLE 2
  42. #   define FAT$C_VFC 3
  43. #   define FAT$C_STREAM 4
  44. #   define FAT$C_STREAMLF 5
  45. #   define FAT$C_STREAMCR 6
  46. # define FAT$S_FILEORG 4
  47. # define FAT$V_FILEORG 4
  48. #   define FAT$C_SEQUENTIAL 0
  49. #   define FAT$C_RELATIVE 1
  50. #   define FAT$C_INDEXED 2
  51. #   define FAT$C_DIRECT 3
  52.   union  {
  53.     unsigned char fat$b_rattrib;
  54.     struct  {
  55.       unsigned fat$v_fortrancc : 1;
  56.       unsigned fat$v_impliedcc : 1;
  57.       unsigned fat$v_printcc : 1;
  58.       unsigned fat$v_nospan : 1;
  59.     } fat$r_rattrib_bits;
  60.   } fat$r_rattrib_overlay;
  61. #   define FAT$V_FORTRANCC 0
  62. #   define FAT$M_FORTRANCC 1
  63. #   define FAT$V_IMPLIEDCC 1
  64. #   define FAT$M_IMPLIEDCC 2
  65. #   define FAT$V_PRINTCC 2
  66. #   define FAT$M_PRINTCC 4
  67. #   define FAT$V_NOSPAN 3
  68. #   define FAT$M_NOSPAN 8
  69.   unsigned short int fat$w_rsize;
  70.   union
  71.   {
  72.     unsigned long int fat$l_hiblk;
  73.     struct
  74.     {
  75.       unsigned short int fat$w_hiblkh;
  76.       unsigned short int fat$w_hiblkl;
  77.     } fat$r_hiblk_fields;
  78.   } fat$r_hiblk_overlay;
  79.   union
  80.   {
  81.     unsigned long int fat$l_efblk;
  82.     struct
  83.     {
  84.       unsigned short int fat$w_efblkh;
  85.       unsigned short int fat$w_efblkl;
  86.     } fat$r_efblk_fields;
  87.   } fat$r_efblk_overlay;
  88.   unsigned short int fat$w_ffbyte;
  89.   unsigned char fat$b_bktsize;
  90.   unsigned char fat$b_vfcsize;
  91.   unsigned short int fat$w_maxrec;
  92.   unsigned short int fat$w_defext;
  93.   unsigned short int fat$w_gbc;
  94.   char fat$fill[8];
  95.   unsigned short int fat$w_versions;
  96. };
  97.  
  98. /*---------------------------------------------------------------------------
  99.     fchdef.h
  100.   ---------------------------------------------------------------------------*/
  101.  
  102. /* This header file was created by Joe Meadows, and is not copyrighted
  103.    in any way. No guarantee is made as to the accuracy of the contents
  104.    of this header file. This header file was last modified on Sep. 22th,
  105.    1987. (Modified to include this statement) */
  106.  
  107. #define FCH$V_BADACL 0x00B
  108. #define FCH$M_BADACL (1 << FCH$V_ACL)
  109. #define FCH$V_BADBLOCK 0x00E
  110. #define FCH$M_BADBLOCK (1 << FCH$V_BADBLOCK)
  111. #define FCH$V_CONTIG 0x007
  112. #define FCH$M_CONTIG (1 << FCH$V_CONTIG)
  113. #define FCH$V_CONTIGB 0x005
  114. #define FCH$M_CONTIGB (1 << FCH$V_CONTIGB)
  115. #define FCH$V_DIRECTORY 0x00D
  116. #define FCH$M_DIRECTORY (1 << FCH$V_DIRECTORY)
  117. #define FCH$V_ERASE 0x011
  118. #define FCH$M_ERASE (1 << FCH$V_ERASE)
  119. #define FCH$V_LOCKED 0x006
  120. #define FCH$M_LOCKED (1 << FCH$V_LOCKED)
  121. #define FCH$V_MARKDEL 0x00F
  122. #define FCH$M_MARKDEL (1 << FCH$V_MARKDEL)
  123. #define FCH$V_NOBACKUP 0x001
  124. #define FCH$M_NOBACKUP (1 << FCH$V_NOBACKUP)
  125. #define FCH$V_NOCHARGE 0x010
  126. #define FCH$M_NOCHARGE (1 << FCH$V_NOCHARGE)
  127. #define FCH$V_READCHECK 0x003
  128. #define FCH$M_READCHECK (1 << FCH$V_READCHECK)
  129. #define FCH$V_SPOOL 0x00C
  130. #define FCH$M_SPOOL (1 << FCH$V_SPOOL)
  131. #define FCH$V_WRITCHECK 0x004
  132. #define FCH$M_WRITCHECK (1 << FCH$V_WRITCHECK)
  133. #define FCH$V_WRITEBACK 0x002
  134. #define FCH$M_WRITEBACK (1 << FCH$V_WRITEBACK)
  135.  
  136. struct fchdef  {
  137.   unsigned : 1;
  138.   unsigned fch$v_nobackup : 1 ;
  139.   unsigned fch$v_writeback : 1;
  140.   unsigned fch$v_readcheck : 1;
  141.   unsigned fch$v_writcheck : 1;
  142.   unsigned fch$v_contigb : 1;
  143.   unsigned fch$v_locked : 1;
  144.   unsigned fch$v_contig : 1;
  145.   unsigned : 3;
  146.   unsigned fch$v_badacl : 1;
  147.   unsigned fch$v_spool : 1;
  148.   unsigned fch$v_directory : 1;
  149.   unsigned fch$v_badblock : 1;
  150.   unsigned fch$v_markdel : 1;
  151.   unsigned fch$v_nocharge : 1;
  152.   unsigned fch$v_erase : 1;
  153. };
  154.  
  155. /*---------------------------------------------------------------------------
  156.     fjndef.h
  157.   ---------------------------------------------------------------------------*/
  158.  
  159. /* This header file was created by Joe Meadows, and is not copyrighted
  160.    in any way. No guarantee is made as to the accuracy of the contents
  161.    of this header file. This header file was last modified on Sep. 22th,
  162.    1987. (Modified to include this statement) */
  163.  
  164. #define FJN$M_ONLY_RU 1
  165. #define FJN$M_RUJNL 2
  166. #define FJN$M_BIJNL 4
  167. #define FJN$M_AIJNL 8
  168. #define FJN$M_ATJNL 16
  169. #define FJN$M_NEVER_RU 32
  170. #define FJN$M_JOURNAL_FILE 64
  171. #define FJN$S_FJNDEF 1
  172. struct fjndef  {
  173.   unsigned fjn$v_only_ru : 1;
  174.   unsigned fjn$v_rujnl : 1;
  175.   unsigned fjn$v_bijnl : 1;
  176.   unsigned fjn$v_aijnl : 1;
  177.   unsigned fjn$v_atjnl : 1;
  178.   unsigned fjn$v_never_ru : 1;
  179.   unsigned fjn$v_journal_file:1;
  180. } ;
  181.